ngl: Fix an uninitialized read
authorMatthias Clasen <mclasen@redhat.com>
Sat, 27 Mar 2021 20:23:40 +0000 (16:23 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 27 Mar 2021 20:32:58 +0000 (16:32 -0400)
We were using the wrong matrix here.
valgrind pointed this point.

gsk/ngl/gsknglrenderjob.c

index 8e4246d8b79d609c4fe0e62789da6d0f04df09c3..026f2be6e7ed9c4381f4a681e06fef535dca7643 100644 (file)
@@ -399,7 +399,6 @@ static void
 extract_matrix_metadata (GskNglRenderModelview *modelview)
 {
   float dummy;
-  graphene_matrix_t m;
 
   gsk_transform_to_matrix (modelview->transform, &modelview->matrix);
 
@@ -428,14 +427,14 @@ extract_matrix_metadata (GskNglRenderModelview *modelview)
         /* TODO: 90% sure this is incorrect. But we should never hit this code
          * path anyway. */
         graphene_vec3_init (&col1,
-                            graphene_matrix_get_value (&m, 0, 0),
-                            graphene_matrix_get_value (&m, 1, 0),
-                            graphene_matrix_get_value (&m, 2, 0));
+                            graphene_matrix_get_value (&modelview->matrix, 0, 0),
+                            graphene_matrix_get_value (&modelview->matrix, 1, 0),
+                            graphene_matrix_get_value (&modelview->matrix, 2, 0));
 
         graphene_vec3_init (&col2,
-                            graphene_matrix_get_value (&m, 0, 1),
-                            graphene_matrix_get_value (&m, 1, 1),
-                            graphene_matrix_get_value (&m, 2, 1));
+                            graphene_matrix_get_value (&modelview->matrix, 0, 1),
+                            graphene_matrix_get_value (&modelview->matrix, 1, 1),
+                            graphene_matrix_get_value (&modelview->matrix, 2, 1));
 
         modelview->scale_x = graphene_vec3_length (&col1);
         modelview->scale_y = graphene_vec3_length (&col2);